浅谈千行代码bug率计算

浅谈千行代码bug率计算因业务需要,需给大家提供出一个千行代码BUG率计算工具。我搜索了一些资料,所谓的千行代码出错率,计算方式为:bug数/代码行数*1000。CMMI级别中做出了相关的指标规定:千行代码缺陷率(bug率):CMM1级 11.95‰CMM2级 5.52‰CMM3级 2.39‰CMM4级 0.92‰CMM5级 0.32‰*但以原本计算方式中代码行数统计不合理,...
摘要由CSDN通过智能技术生成

浅谈千行代码bug率计算

一. 目的
为了度量产品质量,通过这一数据督促开发提高代码质量,提高产品质量。

二. 什么是千行代码Bug率?
参考资料:https://cmmiinstitute.com/

定义:千行代码Bug率,其计算方式为:bug数/代码行数*1000;
度量的标准:千行代码Bug率数值越小质量越好;
CMMI级别中做出了相关的指标规定:
CMM1级 11.95‰
CMM2级 5.52‰
CMM3级 2.39‰
CMM4级 0.92‰
CMM5级 0.32‰

三. 设计&实现
功能:计算千行代码bug率
项目代码总行数计算:
输入:git代码地址,项目名称
返回:项目代码行数(去除空行和注释)
多次迭代代码行数计算:
输入:git地址,分支名称
返回:项目新增和修改代码的行(去除空行和注释)数
千行代码bug率的
输入:bug数,git地址
返回:千行代码bug率结果

5.工具代码如下

# -*- coding=utf-8 -*-
import os
import re
import numpy as np
from matplotlib import pyplot as plt

BASE = os.path.join(os.path.dirname(os.path.abspath(__file__)))

def main():

    number = input("请输入数字:\n"
                   "1、计算千行代码bug率项目代码总行数计算 \n"
                   "2、多次迭代代码行数计算\n"
                   "3、千行代码bug率的\n")
    if number not in ["1", "2", "3"]:
        print("非法输入, 请重试")
        return
    if number == "1":
        github_url = input("请输入github地址:")
        try:
            print(f"{github_url}")
            os.system(f"git clone '{github_url}'")
            dir_name = re.match(r".*?/(.*?).git", github_url).group(1)
            total_count = handle_py_file_total_count(dir_name)
            print(f"该项目的有效行数为: {total_count}")
            return
        except Exception as ex:
            print(f"您输入的地址错误! {ex} ")
            return
    elif number == 
  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值